package leetcode2;

import java.util.Scanner;

public class Day19 {


    public int removeDuplicates(int[] nums) {
        int n = nums.length;
        if(n<2) return n;

        int slow=0,fast=1;
        while(fast<n) {
            if(nums[slow] != nums[fast]) {
                slow++;
                nums[slow]=nums[fast];
            }
            fast++;
        }
        return slow+1;
    }


    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int n = in.nextInt();
            int m = in.nextInt();
            int q = in.nextInt();
            int[][] tmp = new int[n+1][m+1];
            long[][] dp = new long[n+1][m+1];//dp[i][j]表示(1,1) - (i,j)的和
            for(int i=1;i<n+1;i++) {
                for(int j=1;j<m+1;j++) {
                    tmp[i][j] = in.nextInt();
                    dp[i][j] = tmp[i][j] + dp[i][j-1] + dp[i-1][j] - dp[i-1][j-1];
                }
            }
            System.out.println();
            //dp[i][j]中就是和
            while(q>0) {
                int x1=in.nextInt();
                int y1=in.nextInt();
                int x2=in.nextInt();
                int y2=in.nextInt();
                System.out.println(dp[x2][y2]-dp[x2][y1-1]-dp[x1-1][y2]+dp[x1-1][y1-1]);
                q--;
            }
        }
    }
}
